package cn.sc.summer.token.enums;

import cn.hutool.core.util.StrUtil;
import lombok.AllArgsConstructor;
import lombok.Getter;

/**
 * 枚举类型：用户注册类型枚举类
 *
 * @author a-xin
 * @date 10:38
 */
@Getter
@AllArgsConstructor
@SuppressWarnings("all")
public enum LoginTypeEnum {

    WEB("1", "网页形式", "WEB"),
    APP("2", "小程序形式", "APP"),
    SMS_WEB("3", "短信验证登录", "SMS_WEB"),
    ;

    private String type;
    private String info;

    /**
     * 登录方式标志，以此标志为登录方式标识进行验证
     */
    private String slogan;

    public static LoginTypeEnum getByType(String type) {
        if (StrUtil.isBlank(type)) {
            return null;
        }
        for (LoginTypeEnum enums : LoginTypeEnum.values()) {
            if (enums.type.equals(type)) {
                return enums;
            }
        }
        return null;
    }

    public static LoginTypeEnum getBySlogan(String slogan) {
        if (StrUtil.isBlank(slogan)) {
            return null;
        }
        for (LoginTypeEnum enums : LoginTypeEnum.values()) {
            if (enums.slogan.equalsIgnoreCase(slogan)) {
                return enums;
            }
        }
        return null;
    }

}
